The present disclosure relates to packet routing protocols in a wireless digital network. In particular, the present disclosure relates to loop prevention in routing paths through an effective routing protocol in wireless mesh networks.
Wireless digital networks, such as networks operating under Electrical and Electronics Engineers (IEEE) 802.11 standards, are spreading in their popularity and availability. With such popularity, however, come problems of routing management. Specifically, network frames from one or more wired networks (or sites) need to be routed through a wireless mesh network to reach one or more other wired networks (or sites) without forming any loop inside the wireless mesh network.
Typically, wireless routing protocols in wireless mesh networks use Spanning Tree Protocol (STP) to prevent loops in the routing paths. STP first looks for redundant links in a network and selects the best paths. Its initial goal is to put all links in either forwarding or blocking state. In the end, the links without a redundant link and the best links with a redundant link would be in forwarding state. The redundant links that weren't as good as the selected links would be in blocking state. However, Spanning Tree cannot use multiple links to the same destination. Therefore, there is no load sharing or load balancing when a wireless network uses STP. Any redundant link that is not as preferred is blocked (i.e., shut down) until the primary link goes down.
STP uses three criteria to determine whether an interface should be in forwarding state are:
(1) All interfaces on the root bridge are put in forwarding state.
(2) For other bridges that are not the root bridge, the port that is closest to the root bridge is put in forwarding state.
(3) The bridge with the lowest administrative distance to the root bridge is called the designated bridge. The network interface on the designated bridge is called the designated port. That port is put into forwarding state.
With the use of STP, because the “best ports” are put into forwarding state and the other ports are put into blocking state, there are no loops in the network. When a new node is introduced to the network, the port states will be recalculated to prevent a new loop. However, STP do not allow for multiple active gateways, or load balancing across multiple paths, because they are limited to one gateway and selection of one particular path based on tree topology. Thus, it is desirable to have a routing protocol that can prevent loops in routing paths within wireless networks, and meanwhile support multiple active portals as well as load balancing.